Within the context of an object oriented software application, it is often important to retrieve or “query” objects from a variety of external data sources and convert or “map” them into “entity” objects or “entities”. These entities are then available for modification by a local application and later may be saved back to one or more of the external datastores.
Various problems may arise during the process of attempting to perform such queries, especially in the context of ensuring that the state of any entities in the local datastore are such that any modifications, additions, or deletions made to these entities can be later applied back to their original datastores. This may present a problem.
For example, determining whether or not to query an external datastore if some subset of the entities being queried already exists within a local datastore. This may present a problem.
For example, determining how to reconcile the data in an entity when it may have been modified in the local datastore, the external datastore, or both. This may present a problem.
For example, determining how to combine the results of an external query with the results of the same query running against the internal datastore, given that the two (or more) result sets have both overlapping and nonoverlapping regions. This may present a problem.
For example, determining if there should be dynamic solutions to the ordering, reconciliation and combination problems mentioned above. This may present a problem.
Microsoft is registered trademark of Microsoft Corporation. (.Net logo) is a trademark of Microsoft Corporation. DevForce is a registered trademark of IdeaBlade, Inc. IEEE is a registered trademark of The Institute of Electrical and Electronics Engineers, Inc. FireWire is a registered trademark of APPLE INC.